<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>数据类型</title>
</head>
<body>
    <script>
        "use strict";
        /*
            Javascript5种基本数据类型
                undefined null boolean number string
            1种复杂数据类型
                object
            
            typeof操作符：用来检测变量的数据类型
            对于一个值使用typeof操作符可能返回下列某个字符串：
                undefined-如果这个值未定义
                boolean-如果这个值是布尔值
                string-如果这个值是字符串
                number-如果这个值是数值
                object-如果这个值是对象或null
                function-如果这个值是函数

            undefined类型：
                这种类型只有一个值，即特殊的undefined。
                在使用var声明变量但未对其加以初始化时，这个变量的值就是undefined

            null类型：
                null类型是第二个只有一个值的数据类型，这个类型的值是null。
                从逻辑来看，null值表示一个空对象的指针，而这也证明使用typeof操作符检测null时会返回object

                如果定义的变量准备在将来用于保存对象，那么最好将该变量初始化为null而不是其他值。
                这样，只要检查是否为null值，就可以知道相应的变量是否已经保存了一个对象

                实际上，undefined的值是派生自null值得，因此ECMA-262规定对他们相等性测试要返回true。
                    console.log(undefined == null); // true
                    console.log(undefined === null); // false

        */
        
    </script>
</body>
</html>